\documentclass[a4paper,12pt]{report}
\usepackage[T1]{fontenc}				% codifica dei font
\usepackage[utf8]{inputenc}			% codifica di input
\usepackage[italian]{babel}			% trattare le lingue
\usepackage{indentfirst}				% indentazione della prima riga del paragrafo
\usepackage{enumitem}						% personalizzazione degli elenchi
\usepackage{microtype}					% migliora il riempimento delle righe
\usepackage[colorlinks]{hyperref}	% colora i link
\usepackage{booktabs}
\usepackage{hyperref}
\usepackage{tabularx}
%\usepackage{comment}
\usepackage{graphicx}
%\usepackage{caption}
%\usepackage{frontespizio}

\author{Simone Cainero}
\title{Analisi Costi}

% definisco l'ambiente "tabella"
\newenvironment{tabellaX}[2]%
	{\begin{table}{#1}\footnotesize%
		\begin{center}%
			\begin{tabularx}{\textwidth}{#2}}%
			{\end{tabularx}%
		\end{center}%
	\end{table}}

\newenvironment{tabella}[1]%
	{\begin{table}{b}\footnotesize%
		\begin{center}%
			\begin{tabularx}{\textwidth}{#1}}%
			{\end{tabularx}%
		\end{center}%
	\end{table}}


\begin{document}
	\begin{titlepage}
		%\begin{figure}%[htbp]
		%	\centering
		%	\includegraphics[width=0.5\textwidth]{crystal.jpg}
		%\end{figure}

		\begin{center}
			\vspace{1cm}
			\Huge{Crystal Software}
			\vspace{2cm}

			{\fontsize{40}{50}\selectfont Analisi Costi}
		\end{center}

		\begin{table}[b]\begin{center}\begin{tabularx}{\textwidth}{rlXl}
			\toprule
			\textbf{Rev.}	& \textbf{Data}	& \textbf{Descrizione}		& \textbf{Autore} \\
			\midrule
			1.1				& 01/03/2013		& Aggiornamento Post Architectural Level	& Simone Cainero \\
			\midrule
			1.0				& 11/01/2013		& Creazione del documento	& Simone Cainero \\
			\bottomrule
		\end{tabularx}\end{center}\end{table}
	\end{titlepage}

	\tableofcontents

	\chapter{Scopo e audience}
	\begin{par}Lo scopo di questo documento è effettuare la stima dei costi sostenuti per la produzione del software ‘‘People’’. Tale stima viene effettuata seguendo il modello COCOMO II. Il documento descrive il modello e le sue modalità d'uso, mostra i passaggi effettuati per arrivare alla stima COCOMO II (sia nell'Early Design Level che nel Post Architecture Level), mostra i passaggi effettuati per stimare i costi diretti ed indiretti, e infine mostra come viene effettuata la stima del costo totale e ne riporta il valore. Questo documento è destinato al membro del team che produce il preventivo da cosegnare al cliente.\end{par}

	\chapter{Glossario}
	Di seguito alcuni termini utilizzati nel documento.
	\begin{itemize}
		\item COCOMO: Constructive Cost Model, un modello algoritmico di stima dei costi ideato da Boehm
		\item KLOC: Kilo Lines Of Code
	\end{itemize}

	\chapter{Il modello COCOMO II}
		\begin{par}Il modello COCOMO è un modello empirico per la stima dell'Effort basato sull’esperienza del progetto. È un modello a tre livelli che permette di aumentare l’accuratezza della stima al progredire del processo di sviluppo. I tre livelli si riferiscono a tre fasi dello sviluppo:
		\begin{enumerate}
			\item Early prototyping level, utilizzato nelle fasi iniziali del processo, prima di avere una specifica formale dei requisiti
			\item Early design level, utilizzato quando la specifica dei requisiti è già stata eseguita
			\item Post-architecture level, utilizzato dopo avere progettato il sistema
		\end{enumerate}\end{par}

		\begin{par}L'analisi dei costi del software ‘‘People’’ utilizzerà gli ultimi due livelli, essendo che questa fase del processo viene svolta quando le specifiche del sistema sono già state redatte. Verrà effettuata quindi una stima dei costi prima di progettare il sistema ed una successiva, in modo da rendere più accurato il calcolo.\end{par}

		\begin{par}Per questi livelli la formula utilizzata per stimare l'Effort è la seguente:
		\[
			 Effort = A \, Size^B M
		\]
		dove
		\begin{itemize}
			\item $Size$ è la dimensione del software in KLOC
			\item $A$ è una costante predefinita del modello che nella calibrazione iniziale standard ha valore 2,5
			\item $B$ è un coefficiente calibrabile che dipende da 5 fattori di scala
			\item $M$ indica la complessità degli aspetti considerati dagli indici dei costi
		\end{itemize}\end{par}

		\begin{par}Alcuni di questi fattori sono calcolati nello stesso mondo in entrambi i livelli, altri invece differiscono per le modalità di calcolo.\newline\end{par}

		\begin{par}Il tempo di sviluppo \emph{TDEV} in mesi si calcola tramite la formula
		\[
			TDEV=2.5 \, Effort^k
		\]
		dove k è un coefficiente che vale
		\begin{itemize}
			\item \emph{0,38} per progetti di complessità semplice
			\item \emph{0,35} per progetti di complessità moderata
			\item \emph{0,32} per progetti di complessità alta
		\end{itemize}\end{par}

		\begin{par}Avendo calcolato l'\emph{Effort} in persone/mese necessarie per lo sviluppo del progetto ed il tempo \emph{TDEV} di sviluppo necessario, il numero \emph{N} di programmatori da impiegare nello sviluppo del progetto risulta quindi
		\[
			N=Effort/TDEV
		\]\end{par}

		\section{L'esponente $B$}
			\begin{par}L'esponente B dipende dai seguenti 5 fattori:
			\begin{itemize}
				\item \emph{Esperienza}: riflette l'esperienza del team con questo tipo di progetti
				\item \emph{Flessibilità di sviluppo}: riflette il grado di flessibilità di questo progetto
				\item \emph{Architettura / risoluzione dei rischi}: riflette il grado di analisi del rischio effettuata
				\item \emph{Coesione del team}: riflette il grado di coesione del team
				\item \emph{Maturità del processo}
			\end{itemize}\end{par}

			\begin{par}Ad ogni fattore viene associato un peso $w$ secondo i seguenti valori:
			\begin{itemize}
				\item 1: molto alto
				\item 2: alto
				\item 3: nominale
				\item 4: basso
				\item 5: molto basso
			\end{itemize}\end{par}
		
			\begin{par}Infine l'esponente viene calcolato mediante la formula
			\[
				B=1.01 + 0.01 * \sum_{i=0}^5 w_i
			\]\end{par}

			\section{Il fattore moltiplicativo $M$}
				\begin{par}Il fattore moltiplicativo $M$ è il coefficiente di assestamento, ovvero un valore che indica lo scostamento dal valore normale di un determinato attributo all'interno del sistema. Nel modello COCOMO II prevede 17 \emph{Cost Driver} ad ognuno dei quali è attribuito un valore su una scala di 6 valori (0 = ‘‘Molto Basso’’, 1 = ‘‘Basso’’, 2 = ‘‘Nominale’’, 3 = ‘‘Alto’’, 4 = ‘‘Molto alto’’, 5 = ‘‘Altissimo’’), come riportato nella tabella~\ref{cost_diver_tab}.\newline\end{par}

\begin{table}[ht]\footnotesize\caption{Cost Driver per il calcolo del fattore moltiplicativo $M$.}\label{cost_diver_tab}\begin{center}\begin{tabularx}{\textwidth}{cXcccccc}
\toprule
\textbf{ID} & \textbf{Cost driver} & \textbf{0} & \textbf{1}	& \textbf{2} & \textbf{3} & \textbf{4} & \textbf{5} \\
\midrule
RELY & Affidabilità richiesta del software & 0.75 & 0.88 & 1.00 & 1.15 & 1.39 & - \\
\midrule
DATA & Dimensioni della base di dati & - & 0.93 & 1.00 & 1.09 & 1.19 & - \\
\midrule
CPLX & Complessità del prodotto & 0.75 & 0.88 & 1.00 & 1.15 & 1.30 & 1.66 \\
\midrule
RUSE & Riusabilità richiesta & - & 0.91 & 1.00 & 1.14 & 1.29 & 1.49 \\
\midrule
DOCU & Quantità e qualità della documentazione richiesta & 0.89 & 0.95 & 1.00 & 1.06 & 1.13 & - \\
\midrule
TIME & Requisiti di prestazione run-time & - & - & 1.00 & 1.11 & 1.31 & 1.67 \\
\midrule
STOR & Requisiti di memoria centrale & -  & - & 1.00 & 1.06 & 1.21 & 1.57 \\
\midrule
PVOL & Volatilità piattaforma & - & 0.87 & 1.00 & 1.15 & 1.30 & - \\
\midrule
ACAP & Capacità e produttività degli analisti & 1.50 & 1.22 & 1.00 & 0.83 & 0.67 & - \\
\midrule
PCAP & Esperienza dei programmatori & 1.37 & 1.16 & 1.00 & 0.87 & 0.74 & - \\
\midrule
PCON & Continuità del personale (turn-over) & 1.24 & 1.10 & 1.00 & 0.92 & 0.84 & - \\
\midrule
AEXP & Esperienza nel dominio applicativo & 1.22 & 1.10 & 1.00 & 0.89 & 0.81 & - \\
\midrule
PEXP & Esperienza riguardo alla piattaforma & 1.25 & 1.12 & 1.00 & 0.88 & 0.81 & - \\
\midrule
LTEX & Esperienza riguardo ai tool e al linguaggio di programmazione & 1.22 & 1.10 & 1.00 & 0.91 & 0.84 & - \\
\midrule
TOOL & Utilizzo di tool per la gestione del processo di sviluppo & 1.24 & 1.12 & 1.00 & 0.86 & 0.72 & - \\
\midrule
SITE & Distribuzione del progetto in più sedi & 1.25 & 1.10 & 1.00 & 0.92 & 0.84 & 0.78 \\
\midrule
SCED & Vincoli sui tempi di sviluppo & 1.29 & 1.10 & 1.00 & 1.00 & 1.00 & - \\
\bottomrule
\end{tabularx}\end{center}\end{table}

				\begin{par}Nell'Early Design Level vengono considerati solo 7 Cost Driver ottenuti combinando i Cost Driver come specificato nella tabella~\ref{cost_diver_early_combinazione}.\newline\end{par}

				\begin{table}[ht]\footnotesize\caption{Combinazione dei Cost Driver nell'Early Design Level.}\label{cost_diver_early_combinazione}\begin{center}\begin{tabularx}{\textwidth}{cXcccccc}
				\toprule
				\textbf{ID} & \textbf{Cost driver} & \textbf{Componenti} \\
				\midrule
				RCPX	& Affidabilità e complessità del prodotto									& RELY, DATA, CPLX, DOCU \\
				\midrule
				RUSE	& Riutilizzo necessario																& RUSE \\
				\midrule
				PDIF	& Difficoltà della piattaforma													& TIME, STOR, PVOL \\
				\midrule
				PERS	& Capacità del personale															& ACAP, PCAP, PCON \\
				\midrule
				PREX	& Esperienza del personale															& AEXP, PEXP, LTEX \\
				\midrule
				FCIL	& Facilitazioni (funzionaltà di supporto)									& TOOL, SITE \\
				\midrule
				SCED	& Tempistica (concentrazione della pianificazione di sviluppo)	& SCED \\
				\bottomrule
				\end{tabularx}\end{center}\end{table}
	
				\begin{par}Si è scelto quindi esprimere questa combinazione effettuando una media aritmetica sui valori dei Cost Driver, considerando solo i Cost Driver che forniscono un valore (si escludono dal calcolo i Cost Driver che hanno peso nullo). Si ottiene così la tabella~\ref{cost_diver_early_valori}.\newline\end{par}

\begin{table}[ht]\footnotesize\caption{Cost Driver nell'Early Design Level.}\label{cost_diver_early_valori}\begin{center}\begin{tabularx}{\textwidth}{cXcccccc}
\toprule
\textbf{ID} & \textbf{Cost driver} & \textbf{0} & \textbf{1}	& \textbf{2} & \textbf{3} & \textbf{4} & \textbf{5} \\
\midrule
RCPX & Affidabilità e complessità del prodotto & 0.80 & 0.91 & 1.00 & 1.11 & 1.25 & 1.66 \\
\midrule
RUSE & Riuso necessario & - & 0.91 & 1.00 & 1.14 & 1.29 & 1.49 \\
\midrule
PDIF & Difficoltà della piattaforma & - & 0.87 & 1.00 & 1.11 & 1.27 & 1.62 \\
\midrule
PERS & Capacità del personale & 1.37 & 1.16 & 1.00 & 0.87 & 0.75 & - \\
\midrule
PREX & Esperienza del personale & 1.23 & 1.11 & 1.00 & 0.89 & 0.82 & - \\
\midrule
FCIL & Facilitazioni (funzionaltà di supporto) & 1.25 & 1.11 & 1.00 & 0.89 & 0.78 & - \\
\midrule
SCED & Tempistica (concentrazione della pianificazione di sviluppo) & 1.29 & 1.10 & 1.00 & 1.00 & 1.00 & - \\
\bottomrule
\end{tabularx}\end{center}\end{table}

				\begin{par}Nell'Early Design Level	il fattore moltiplicativo $M$ è calcolato mediante la seguente formula
					\begin{center}\begin{scriptsize}\emph{M = RCPX * RUSE * PDIF * PERS * PREX * FCIL * SCED}\newline\end{scriptsize}\end{center}\end{par}

				\begin{par}Nell'Post-architecture level	il fattore moltiplicativo $M$ è calcolato mediante la seguente formula:\newline
					\begin{center}\begin{scriptsize}\emph{M = RELY * DATA * CPLX * RUSE * DOCU * TIME * STOR * PVOL * ACAP * PCAP * PCON * AEXP * PEXP * LTEX * TOOL * SITE * SCED}\end{scriptsize}\end{center}\end{par}

	\chapter{Stima del costo COCOMO II}
		\section{Early Design Level}
		\label{early_design_level}
			\begin{par}In questo capitolo verrò effettuato il calcolo della stima dei costi COCOMO II nell'Early Design Level.\end{par}

			\subsection{Calcolo del numero di Function Count (\emph{FC})}
			\begin{par}La tabella~\ref{function_count} mostra la classificazione delle funzioni del software \emph{People} e i valori di complessità asseganti.\end{par}
				\begin{table}[ht]\footnotesize\caption{Classificazione per il calcolo del FC.}\label{function_count}\begin{center}\begin{tabularx}{\textwidth}{Xllc}
				\toprule
				\textbf{Funzione}					& \textbf{Classe}				& \textbf{Complessità}		& \textbf{Valore} \\
				\midrule
				Inserimento anagrafica			& Input esterno					& media				& 4 \\
				\midrule
				Modifica anagrafica				& Input esterno					& media				& 4 \\
				\midrule
				Cambio stato certificato		& Input esterno					& media				& 4 \\
				\midrule
				Visualizzazione anagrafica		& Output esterno				& bassa				& 3 \\
				\midrule
				Visualizzazione certificato	& Output esterno				& bassa				& 3 \\
				\midrule
				Emissione certificato				& Interfaccia esterna			& alta				& 10 \\
				\midrule
				Esportazione certificato		& Interfaccia esterna			& media				& 7 \\
				\midrule
				Esportazione anagrafica			& Interfaccia esterna			& alta				& 10 \\
				\midrule
				Ricerca anagrafica					& Interrogazione esterna	& media				& 5 \\
				\midrule
				Ricerca certificato				& Interrogazione esterna	& media				& 5 \\
				\midrule
				Certificato							& File logico interno			& media				& 10 \\
				\midrule
				Anagrafica								& File logico interno			& media				& 10 \\
				\midrule
															&										& \textbf{Totale} & 75 \\						
				\bottomrule
				\end{tabularx}\end{center}\end{table}

				\begin{par}Il numero di \emph{FC} risulta quindi
				\[
					FC=75
				\]\end{par}

			\subsection{Calcolo del Technical Complexity Factor (\emph{TCF})}
				\begin{par}La tabella~\ref{caratteristiche_tcf} mostra i valori di influenza scelti per ciascuna caratteristica del sistema.\end{par}

				\begin{table}[ht]\footnotesize\caption{Influenza delle caratteristiche del sistema.}\label{caratteristiche_tcf}\begin{center}\begin{tabularx}{\textwidth}{lcX}
				\toprule
				\textbf{Fattore} 									& \textbf{Valore} & \textbf{Motivazione} \\
				\midrule
				comunicazione dati 								& 2 & Normale inserimento di dati \\
				\midrule
				distribuzione dell'elaborazione				& 0 & Non è presente alcun calcolo distribuito \\
				\midrule
				prestazioni 											& 1 & Non sono richieste particolari prestazioni \\
				\midrule
				utilizzo estensivo della configurzione 	& 1 & Il sistema sarà installato su macchine non utilizzate pesantemente \\
				\midrule
				frequenza delle transazioni 					& 2 & Lo scambio delle informazioni non è frequente nel sistema \\
				\midrule
				inserimento dati interattivo 					& 4 & Il sistema è quasi interamente interattivo \\
				\midrule
				efficienza per l'utente finale 				& 3 & Il sistema deve avere un grado di efficienza normale \\
				\midrule
				aggiornamento interattivo 						& 3 & Gli archivi saranno aggiornati quasi in tempo reale \\
				\midrule
				complessità elaborativa 						& 2 & Il sistema non richiede operazioni particolarmente complesse \\
				\midrule
				riusabilità 											& 1 & Il riutilizzo del sistema sarà limitato \\
				\midrule
				facilità di installazione 						& 0 & Il sistema verrà installato dal team \\
				\midrule
				facilità di gestione operativa 				& 0 & Il sistema non prevede recovery e backup \\
				\midrule
				molteplicità delle aree 						& 0 & Il sistema verrà installato su una sola macchina \\
				\midrule
				facilità di modifica 								& 2 & Il sistema non dovrà avere una certa facilità di modifica \\
				\midrule
				\textbf{totale} 									& 21 & \\
				\bottomrule
				\end{tabularx}\end{center}\end{table}

				\begin{par}Il TCF viene calcolato tramite la seguente formula:
				\[
					TCF=0.65+0.01*21= 0.86
				\]\end{par}

			\subsection{Calcolo del numero di Function Points (\emph{FP})}
				\begin{par}Il numero di Function Points è il seguente:
				\[
					FP=FC*TCF=75*0.86=64,50
				\]\end{par}

			\subsection{Calcolo della dimensione \emph{Size}}
				\begin{par}La dimensione \emph{Size} viene calcolata mediante la seguente formula:
				\[
					Size=FP*60/1000=64,50*60\,/\,1000=3,85\,KLOC
				\]
				dove $FP$ sono i Function Points calcolati e 60 è il valore medio di $KLOC/FP$ per il linguaggio di programmazione utilizzato (Java).\end{par}

			\subsection{Calcolo dell'esponente \emph{B}}
				\begin{par}La tabella~\ref{fattori_esponente_B} mostra i valori utilizzati per i fattori dell'esponente \emph{B}.\end{par}

				\begin{table}[ht]\footnotesize\caption{Valori utilizzati per i fattori di scala dell'esponente \emph{B}.}\label{fattori_esponente_B}\begin{center}\begin{tabularx}{\textwidth}{lcX}
				\toprule
				\textbf{Fattore}									& \textbf{Valore}	& \textbf{Motivazione} \\
				\midrule
				Esperienza												& 4						& Il team ha poca esperienza per questo tipo di progetti\\
				\midrule
				Flessibilità di sviluppo						& 2						& Il cliente non ha imposto particolari vincoli \\
				\midrule
				Architettura / risoluzione dei rischi		& 5						& Non è stata fatta alcuna analisi dei rischi \\
				\midrule
				Coesione del team									& 1						& Il team è composto da un solo membro \\
				\midrule
				Maturità del processo								& 4						& Livello CMM \\
				\bottomrule
				\end{tabularx}\end{center}\end{table}

				\begin{par}L'esponente $B$ viene calcolato mediante la formula
			\[
				B=1.01 + 0.01 * \sum_{i=0}^n w_i=1.01+0.16=1.17
			\]\end{par}

			\subsection{Calcolo del fattore moltiplicativo \emph{M}}
				\begin{par}La tabella~\ref{fattori_m} mostra i valori assegnati ai Cost Driver.\newline\end{par}

				\begin{table}[ht]\footnotesize\caption{Valori utilizzati dei Cost Driver per il calcolo di \emph{M} nell' Early Design Level.}\label{fattori_m}\begin{center}\begin{tabularx}{\textwidth}{ccX}
				\toprule
				\textbf{Id}			& \textbf{Valore}	& \textbf{Motivazione} \\
				\midrule
				RCPX		& 0.91		& Il progetto non è molto complesso e non richiede una grande affidabilità \\
				\midrule
				RUSE		& 0.91		& Il progetto non richiede alcun riuso \\ 
				\midrule
				PDIF		& 0.87		& Non ci sono vincoli di piattaforma  \\
				\midrule
				PERS		& 1.16		& Il personale non ha capacità elevate \\
				\midrule
				PREX		& 1.11		& Il personale non ha esperienza elevata \\
				\midrule
				FCIL		& 1.25		& Non vengono utilizzate funzionalità di supporto \\
				\midrule
				SCED		& 1.29		& Le tempistiche sono molto stringenti \\
				\bottomrule
				\end{tabularx}\end{center}\end{table}

				\begin{par}Il fattore moltiplicativo \emph{M} viene calcolato come il prodotto dei valori dei Cost Driver:
				\[
					M=0,91 * 0.91 * 0.87 * 1.16 * 1.11 * 1.25 * 1.29 = 1.496
				\]\end{par}

			\subsection{\emph{Effort}, \emph{TDEV}, \emph{N}}
				\begin{par}La stima dell'\emph{Effort} in PM (Persone/Mese) viene fatta con la seguente formula:
				\[
					Effort = A \, Size^B M = 2.5 * 3,85^{1.17} * 1.496 = 18,11
				\]\end{par}

				\begin{par}Essendo il progetto a complessità semplice e scegliendo $k=0,38$, il tempo di sviluppo \emph{TDEV} in mesi si calcola tramite la formula
				\[
					TDEV=2.5 \, Effort^k=2.5 * 18,11^{0.38} = 7,52
				\]\end{par}

				\begin{par}Avendo calcolato l'\emph{Effort} in persone/mese necessarie per lo sviluppo del progetto ed il tempo di sviluppo necessario, il numero di persone da impiegare nello sviluppo del progetto risulta quindi
				\[
					N=Effort/TDEV=18,11/7,52\simeq 2
				\]\end{par}

		\section{Post Architecture Level}
		\begin{par}In questo capitolo verrà effetuato un raffinamento del calcolo della stima dei costi COCOMO II effettuato nel capitolo~\ref{early_design_level}.\end{par}

			\subsection{Calcolo del fattore moltiplicativo \emph{M}}
				\begin{par}La tabella~\ref{fattori_m_post} mostra i valori assegnati ai Cost Driver.\newline\end{par}

				\begin{table}[ht]\footnotesize\caption{Valori utilizzati dei Cost Driver per il calcolo di \emph{M} nel Post Architectural Level.}\label{fattori_m_post}\begin{center}\begin{tabularx}{\textwidth}{ccX}
				\toprule
				\textbf{Id}			& \textbf{Valore}	& \textbf{Motivazione} \\
				\midrule
				RELY		& 1.00		& Il software richiede un'affidabilità normale \\
				\midrule
				DATA		& 0.93		& La base di dati è piccola \\ 
				\midrule
				CPLX		& 0.88		& Il prodotto non è molto complesso \\
				\midrule
				RUSE		& 0.91		& Non è richiesta alcuna riusabilità \\
				\midrule
				DOCU		& 0.95		& Il software richiede poca documentazioen \\
				\midrule
				TIME		& 1.00		& Il software richiede requisiti di prestazione normali \\
				\midrule
				STOR		& 1.00		& Il software richiede requisiti di memoria normali \\
				\midrule
				PVOL		& 0.87		& Il software non richiede volatilità della piattaforma \\
				\midrule
				ACAP		& 1.22		& Gli analisti hanno scarse capacità \\
				\midrule
				PCAP		& 1.16		& I programmatori hanno scarsa esperienza \\
				\midrule
				PCON		& 0.84		& La continuità del personale è del 100\% \\
				\midrule
				AEXP		& 0.89		& L'esperienza nel dominio applicativo è buona \\
				\midrule
				PEXP		& 1.12		& L'esperienza riguardo la piattaforma è scarsa \\
				\midrule
				LTEX		& 1.10		& L'esperienza riguardo ai tool e al linguaggio è scarsa \\
				\midrule
				TOOL		& 1.24		& L'utilizzo di tool di processo è nulla \\
				\midrule
				SITE		& 1.25		& La distribuzione del progetto in più sedi è nulla\\
				\midrule
				SCED		& 1.00		& I vincoli di tempo sono alti \\
				\bottomrule
				\end{tabularx}\end{center}\end{table}

				\begin{par}Il fattore moltiplicativo \emph{M} viene calcolato come il prodotto dei valori dei Cost Driver:\newline
					\begin{center}\begin{scriptsize}\emph{M=1,00 * 0,93 * 0,88 * 0,91 * 0,95 * 1,00 * 1,00 * 0,87 * 1,22 * 1,16 * 0,84 * 0,89 * 1,12 * 1,10 * 1,24*1,25*1,00=1,243}\end{scriptsize}\end{center}\end{par}


			\subsection{\emph{Effort}, \emph{TDEV}, \emph{N}}
				\begin{par}La stima dell'\emph{Effort} in PM (Persone/Mese) viene fatta con la seguente formula:
				\[
					Effort = A \, Size^B M = 2.5 * 3,85^{1.17} * 1.243 = 15,05
				\]\end{par}

				\begin{par}Essendo il progetto a complessità semplice e scegliendo $k=0,38$, il tempo di sviluppo \emph{TDEV} in mesi si calcola tramite la formula
				\[
					TDEV=2.5 \, Effort^k=2.5 * 15,05^{0.38} = 7,01
				\]\end{par}

				\begin{par}Avendo calcolato l'\emph{Effort} in persone/mese necessarie per lo sviluppo del progetto ed il tempo di sviluppo necessario, il numero di persone da impiegare nello sviluppo del progetto risulta quindi
				\[
					N=Effort/TDEV=15,05/7,01 \simeq 2
				\]\end{par}


	\chapter{Costo totale}
		\section{Costi diretti}
		\begin{par}I costi del personale di lavoro comprendono oltre allo stipendio dei dipendenti, gli oneri fiscali e previdenziali. L'azienda valuta il costo medio di un programmatore pari a 18 euro l'ora, il quale lavora 8 ore al giorno, 5 giorni a settimana. Il costo mensile (4 settimane) di ogni persona risulta quindi
		\[
			18\,euro * 8\,ore * 5\,giorni * 4\,settimane=2880\,euro
		\]\end{par}

		\section{Costi indiretti}
			\begin{par}La tabella~\ref{costi_indiretti} riporta l'elenco dei costi indiretti sostenuti dall'azienda.\end{par}
			\begin{table}[ht]\footnotesize\caption{Costi indiretti.}\label{costi_indiretti}\begin{center}\begin{tabularx}{\textwidth}{lXc}
			\toprule
			\textbf{Costo}					& \textbf{Descrizione}												& \textbf{Importo} \\
			\midrule
			Costi di struttura				& Affitto, ammortizzamento macchinari							& 1500 euro/mese \\
			\midrule
			Costi dei servizi fruiti 	& Luce, acqua, gas, telefono, internet, manutenzioni	& 500 euro/mese \\
			\midrule	
			Costi dei servizi erogati	& Installazione sistema												& 200 euro \\
			\bottomrule
			\end{tabularx}\end{center}\end{table}

		\section{Costo finale}
		\begin{par}In questo capitolo verrà effettuata la stima del costo finale del software, visto come costo COCOMO II sommato ai costi esterni. Il calcolo verrà differenziato a seconda del livello del processo software.\end{par}

			\subsection{Early Design Level}
			\begin{par}I costi diretti totali sono dati dal prodotto dello stipendio mensile delle persone per il tempo di sviluppo:
			\[
				CD=2880*2*7,52=43315\,euro
			\]\end{par}
			
			\begin{par}I costi indiretti totali sono dati dal prodotto dei costi indiretti mensili per il tempo di sviluppo, più i costi indiretti forfettari:
			\[
				CI=(1500+500)*7,52+200=15240\,euro
			\]\end{par}

			\begin{par}Il costo finale risulta quindi
			\[
				Costo = CD+CI=58555\,euro
			\]\end{par}

			\begin{par}Dal software ‘‘People’’ l'azienda vuole ottenere un guadagno del 20\%, per cui il prezzo di vendita sarà
			\[
				58555*1,2=70266\,euro\longrightarrow70000\,euro
			\]\end{par}

			\subsection{Post Architecture Level}

			\begin{par}I costi diretti totali sono dati dal prodotto dello stipendio mensile delle persone per il tempo di sviluppo:
			\[
				CD=2880*2*7,01=40377\,euro
			\]\end{par}
			
			\begin{par}I costi indiretti totali sono dati dal prodotto dei costi indiretti mensili per il tempo di sviluppo, più i costi indiretti forfettari:
			\[
				CI=(1500+500)*7,01+200=14220\,euro
			\]\end{par}

			\begin{par}Il costo finale risulta quindi
			\[
				Costo = CD+CI=54598\,euro
			\]\end{par}


\end{document}
